perm filename RVB.FAI[M11,LCS] blob
sn#412602 filedate 1979-01-23 generic text, type T, neo UTF8
03900 ; SUBROUTINE REVX(DL,LD,X,JDS,DOUT,DIN)
04000 ; COMMON /MM/MM,NSM
04100 REVX: 0 ; DIMENSION DL(1),DOUT(1),DIN(1)
04200 MOVE 1,@3(16) ; JD=JDS
04300 SETZ 2, ;AC2 IS K DO 1 K=1,NSM
04340 MOVE 5,4(16) ;LOC OF DOUT ARRAY
04345 MOVE 6,5(16) ;LOC OF DIN ARRAY
04350 MOVE 3,(16) ;GET LOC. OF DL ARRAY
04400 RVX: AOS 1, ; JD=JD+1
04500 AOS 3, ; DS=DL(JD)
04510 AOS 5, ;AC5 HAS LOC OF DOUT ARRAY
04520 AOS 6,
04550 MOVE 4,-1(3) ; DS
04600 SKIPE MM ;IF(MM.NE.0)GO TO 2
04650 JRST R2
04700 MOVE 0,4 ;DOUT(K)=DS+DOUT(K)
04750 FADR 0,-1(5)
04800 ;C GET OUTPUT FROM DELAY LOOP AND ADD IT INTO OUTPUT BLOCK.
04900 MOVE 7,@2(16) ;DL(JD)=DS*X+DIN(K)
04950 FMPR 7,3 ;X*DS
04975 FADR 7,-1(6) ;+DIN(K)
05000 MOVEM 7,-1(3) ;C ADD SIGNAL INTO DELAY LOOP
05100 JRST R1 ;GO TO 1
05200 R2: MOVE 10,-1(6) ;2 DN=DIN(K)
05300 MOVN 11,-1(6) ;DX=(DS-DN)*X
05350 FADR 11,4 ;-DN+DS
05375 FMPR 11,@2(16) ;*X
05400 FADR 4,11 ;DOUT(K)=DS+DX
05450 MOVEM 4,-1(5) ;C THIS IS 'REV2' PROCESS
05600 FADR 11,10 ;DL(JD)=DX+DN
05700 MOVEM 11,-1(3) ;C ADD SIGNAL INTO DELAY LOOP
05800 R1: CAMGE 1,@1(16) ;1 IF(JD.GE.LD)JD=0
05820 JRST RR1
05840 SETZ 1,
05860 MOVE 3,(16) ;RESET LOC. OF DL ARRAY
05880 RR1: CAML 2,LM+=20
05881 JRST RR2
05882 AOS 1,
05884 JRST REV1
05900 RR2: MOVEM 1,@3(16) ; JDS=JD
06000 JRA 16,6(16) ; END